[C] Decimal -> Binario
Publicado por Enzo de Brito Ferber 05/04/2006
[ Hits: 7.944 ]
Homepage: http://www.maximasonorizacao.com.br
Programa que converte numeros decimais em binario usando operadores bit-bit padrões do C.
Muito bom para se entender operadores bit-bit e conversao de numeros...
/*
* Programa: Binário
* Arquivo: binario.c
* Autor: Enzo Ferber 'Slackware_10'
*/
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#define FLUSH __fpurge(stdin); //fflush(stdin) em sistemas windows
int converter(int num){
printf("%d", (num & 0x80) / 0x80); //bit 7
printf("%d", (num & 0x40) / 0x40); //bit 6
printf("%d", (num & 0x20) / 0x20); //bit 5
printf("%d", (num & 0x10) / 0x10); //bit 4
printf("%d", (num & 0x08) / 0x08); //bit 3
printf("%d", (num & 0x04) / 0x04); //bit 2
printf("%d", (num & 0x02) / 0x02); //bit 1
printf("%d", (num & 0x01) / 0x01); //bit 0
/* Quando ha uma coversao decimal->binario, o bit 7 vem em
* primeiro lugar, e o 0 em ultimo.
* Exemplo: Converter 65 (A) em binario
* 65 | 2 (resto 1) bit 0
* 32 | 2 (resto 0) bit 1
* 16 | 2 (resto 0) bit 2
* ...
* Depois se inverte os bits:
* B = bit
* B7 B6 B5 B4 B3 B2 B1 B0
*/
}
int main(void){
int num;
while(1){
system("clear"); //cls em sistemas windows
printf("Numero a converter: ");
FLUSH
scanf("%d", &num);
if(num == -1) break; //garante um loop nao infinito
converter(num);
FLUSH
getchar();
}
return 0;
}
Boletim Escolar Com Manipulação de Arquivo
Jogo da cobrinha (Snake II) refeito em C e C++
Nenhum comentário foi encontrado.
Cirurgia para acelerar o openSUSE em HD externo via USB
Void Server como Domain Control
Modo Simples de Baixar e Usar o bash-completion
Monitorando o Preço do Bitcoin ou sua Cripto Favorita em Tempo Real com um Widget Flutuante
Atualizar Linux Mint 22.2 para 22.3 beta
Jogar games da Battle.net no Linux com Faugus Launcher
Como fazer a Instalação de aplicativos para acesso remoto ao Linux
Conky, alerta de temperatura alta (9)
Assisti Avatar 3: Fogo e Cinzas (3)
Duas Pasta Pessoal Aparecendo no Ubuntu 24.04.3 LTS (42)









